package FurnitureFactory

type IFurniture interface {
	getFurnitureTypeName() string
}

type Furniture struct {
	IStyle
	IFurniture
}

type Sofa struct{ Furniture }

func (furniture *Sofa) getFurnitureTypeName() string {
	return "沙发"
}

type Chair struct{ Furniture }

func (furniture *Chair) getFurnitureTypeName() string {
	return "椅子"
}

type Table struct{ Furniture }

func (furniture *Table) getFurnitureTypeName() string {
	return "桌子"
}

func (furniture *Furniture) GetFurnitureName() string {
	return furniture.getStyleName() + "的" + furniture.getFurnitureTypeName()
}
